package cn.yitun.chat.yitunservercommonlib.crud.yitun;


import java.util.List;
import java.util.Map;

/**
 * crud接口
 * @param <DTO>
 * @param <VO>
 * @param <PO>
 * @since 2019-11-26
 * @author chenyitun@163.com
 */
public interface CrudService<DTO , PO , VO> extends  BaseService{
    PO get(Long userId);

    List<PO> list(Map<String, Object> map);

    List<PO> list();

    List<PO> list(PO entity);


    VO getVO(Long id);

    List<VO> listVO(Map<String, Object> params);

    List<VO> listVO();

    List<VO> listVO(DTO entity);


    int count(Map<String, Object> map);

    int save(DTO t);

    int update(DTO t);

    int remove(Long id);

    int batchRemove(Long[] ids);

    int batchRemove(List<Long> ids);

}
